//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//

package com.carhailing.common.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;

import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
@Data
@TableName("coupon_schedule_dto")
public class CouponScheduleDto {
    @TableId("coupon_schedule_id")
    private Long couponScheduleId;
    @TableField("coupon_schedule_start_time")
    @DateTimeFormat(
            pattern = "yyyy-MM-dd HH:mm:ss"
    )
    @JsonFormat(
            pattern = "yyyy-MM-dd HH:mm:ss",
            timezone = "GMT+8"
    )
    private Date couponScheduleStartTime;
    @TableField("coupon_schedule_end_time")
    @DateTimeFormat(
            pattern = "yyyy-MM-dd HH:mm:ss"
    )
    @JsonFormat(
            pattern = "yyyy-MM-dd HH:mm:ss",
            timezone = "GMT+8"
    )
    private Date couponScheduleEndTime;
    @TableField("coupon_schedule_status")
    private Integer couponScheduleStatus;
    @TableField("coupon_schedule_name")
    private String couponScheduleName;

    public CouponScheduleDto() {
    }

    public Long getCouponScheduleId() {
        return this.couponScheduleId;
    }

    public Date getCouponScheduleStartTime() {
        return this.couponScheduleStartTime;
    }

    public Date getCouponScheduleEndTime() {
        return this.couponScheduleEndTime;
    }

    public Integer getCouponScheduleStatus() {
        return this.couponScheduleStatus;
    }

    public String getCouponScheduleName() {
        return this.couponScheduleName;
    }

    public void setCouponScheduleId(final Long couponScheduleId) {
        this.couponScheduleId = couponScheduleId;
    }

    @JsonFormat(
            pattern = "yyyy-MM-dd HH:mm:ss",
            timezone = "GMT+8"
    )
    public void setCouponScheduleStartTime(final Date couponScheduleStartTime) {
        this.couponScheduleStartTime = couponScheduleStartTime;
    }

    @JsonFormat(
            pattern = "yyyy-MM-dd HH:mm:ss",
            timezone = "GMT+8"
    )
    public void setCouponScheduleEndTime(final Date couponScheduleEndTime) {
        this.couponScheduleEndTime = couponScheduleEndTime;
    }

    public void setCouponScheduleStatus(final Integer couponScheduleStatus) {
        this.couponScheduleStatus = couponScheduleStatus;
    }

    public void setCouponScheduleName(final String couponScheduleName) {
        this.couponScheduleName = couponScheduleName;
    }

    public boolean equals(final Object o) {
        if (o == this) {
            return true;
        } else if (!(o instanceof CouponScheduleDto)) {
            return false;
        } else {
            CouponScheduleDto other = (CouponScheduleDto)o;
            if (!other.canEqual(this)) {
                return false;
            } else {
                label71: {
                    Object this$couponScheduleId = this.getCouponScheduleId();
                    Object other$couponScheduleId = other.getCouponScheduleId();
                    if (this$couponScheduleId == null) {
                        if (other$couponScheduleId == null) {
                            break label71;
                        }
                    } else if (this$couponScheduleId.equals(other$couponScheduleId)) {
                        break label71;
                    }

                    return false;
                }

                Object this$couponScheduleStatus = this.getCouponScheduleStatus();
                Object other$couponScheduleStatus = other.getCouponScheduleStatus();
                if (this$couponScheduleStatus == null) {
                    if (other$couponScheduleStatus != null) {
                        return false;
                    }
                } else if (!this$couponScheduleStatus.equals(other$couponScheduleStatus)) {
                    return false;
                }

                label57: {
                    Object this$couponScheduleStartTime = this.getCouponScheduleStartTime();
                    Object other$couponScheduleStartTime = other.getCouponScheduleStartTime();
                    if (this$couponScheduleStartTime == null) {
                        if (other$couponScheduleStartTime == null) {
                            break label57;
                        }
                    } else if (this$couponScheduleStartTime.equals(other$couponScheduleStartTime)) {
                        break label57;
                    }

                    return false;
                }

                Object this$couponScheduleEndTime = this.getCouponScheduleEndTime();
                Object other$couponScheduleEndTime = other.getCouponScheduleEndTime();
                if (this$couponScheduleEndTime == null) {
                    if (other$couponScheduleEndTime != null) {
                        return false;
                    }
                } else if (!this$couponScheduleEndTime.equals(other$couponScheduleEndTime)) {
                    return false;
                }

                Object this$couponScheduleName = this.getCouponScheduleName();
                Object other$couponScheduleName = other.getCouponScheduleName();
                if (this$couponScheduleName == null) {
                    if (other$couponScheduleName == null) {
                        return true;
                    }
                } else if (this$couponScheduleName.equals(other$couponScheduleName)) {
                    return true;
                }

                return false;
            }
        }
    }

    protected boolean canEqual(final Object other) {
        return other instanceof CouponScheduleDto;
    }

    public int hashCode() {
        int result = 1;
        Object $couponScheduleId = this.getCouponScheduleId();
        result = result * 59 + ($couponScheduleId == null ? 43 : $couponScheduleId.hashCode());
        Object $couponScheduleStatus = this.getCouponScheduleStatus();
        result = result * 59 + ($couponScheduleStatus == null ? 43 : $couponScheduleStatus.hashCode());
        Object $couponScheduleStartTime = this.getCouponScheduleStartTime();
        result = result * 59 + ($couponScheduleStartTime == null ? 43 : $couponScheduleStartTime.hashCode());
        Object $couponScheduleEndTime = this.getCouponScheduleEndTime();
        result = result * 59 + ($couponScheduleEndTime == null ? 43 : $couponScheduleEndTime.hashCode());
        Object $couponScheduleName = this.getCouponScheduleName();
        result = result * 59 + ($couponScheduleName == null ? 43 : $couponScheduleName.hashCode());
        return result;
    }

    public String toString() {
        return "CouponScheduleDto(couponScheduleId=" + this.getCouponScheduleId() + ", couponScheduleStartTime=" + this.getCouponScheduleStartTime() + ", couponScheduleEndTime=" + this.getCouponScheduleEndTime() + ", couponScheduleStatus=" + this.getCouponScheduleStatus() + ", couponScheduleName=" + this.getCouponScheduleName() + ")";
    }
}
